package com.bjtu.ptsite.model;

import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 *
 * @author Zehao Wang, Junjie Zhang, Yutao Wei
 *
 */
@Getter
@AllArgsConstructor
public enum TorrentCategory {

    /** 电影资源分类，代码为1 */
    MOVIE("电影", 1),
    /** 电视剧资源分类，代码为2 */
    TV("电视剧", 2),
    /** 动漫资源分类，代码为3 */
    ANIME("动漫", 3),
    /** 音乐资源分类，代码为4 */
    MUSIC("音乐", 4),
    /** 游戏资源分类，代码为5 */
    GAME("游戏", 5),
    /** 软件资源分类，代码为6 */
    SOFTWARE("软件", 6),
    /** 纪录片资源分类，代码为7 */
    DOCUMENTARY("纪录片", 7),
    /** 体育资源分类，代码为8 */
    SPORTS("体育", 8),
    /** 电子书资源分类，代码为9 */
    EBOOK("电子书", 9),
    /** 其他未分类资源，代码为99，作为默认回退分类 */
    OTHER("其他", 99);

    private final String label;
    private final int code;

    @Override
    public String toString() {
        return label;
    }

    public static TorrentCategory fromCode(int code) {
        for (TorrentCategory category : values()) {
            if (category.getCode() == code) {
                return category;
            }
        }
        return OTHER;
    }
}

